Storage area networks (SANs) are dedicated networks that connect one or more hosts or servers to storage devices and subsystems, such as an automated media library. SANs may include an appliance, such as a networked attached storage device (“NASD”).
A NASD comprises storage elements or devices that connect to a network and provide file access services to, for example, one or more host computer systems. NASD devices attach directly to networks, such as local area networks, using traditional protocols such as Ethernet and TCP/IP, and serve files to one or more hosts or clients connected to the network. A NASD typically consists of an engine, which implements the file access services, and one or more storage devices, on which data is stored. A computer host system that accesses a NASD typically uses a file system device driver to access the stored data. The file system device driver typically implements file access commands. The file system driver disposed in a NASD interprets these commands and performs the internal device input/output (I/O) operations necessary to execute those file access commands.
Using prior art apparatus and methods, when a user, i.e. a host computer, designates a certain size for a file system, a corresponding number of storage blocks are allocated to that file system. Thus using these prior art methods, storage blocks are allocated for future anticipated file system needs. Certain file systems and the files they contain do not require all the allotted storage blocks, and therefore, certain storage blocks are not used.
What is needed is a method to allocate storage space to a file system when files are actually written to that file system, thereby allowing a better allocation of information storage resources. Applicant's network attached storage device, and method using same, allocates storage space to a file system when files are actually written to that file system. In addition, Applicants' method can provide point-in-time copies of a file system.